import { configureStore } from '@reduxjs/toolkit';
import taskReducer from './slices/taskSlice';
import proxyReducer from './slices/proxySlice';
import ruleReducer from './slices/ruleSlice';
import resultReducer from './slices/resultSlice';
import authReducer from './slices/authSlice';

export const store = configureStore({
  reducer: {
    tasks: taskReducer,
    proxies: proxyReducer,
    rules: ruleReducer,
    results: resultReducer,
    auth: authReducer,
  },
  middleware: (getDefaultMiddleware) =>
    getDefaultMiddleware({
      serializableCheck: false,
    }),
});

export type RootState = ReturnType<typeof store.getState>;
export type AppDispatch = typeof store.dispatch; 